[세션레포트] Startup to enterprise: Build frontend and fullstack apps that scale #AWSreInvent #FWM205

[세션레포트] Startup to enterprise: Build frontend and fullstack apps that scale #AWSreInvent #FWM205

AWS re:Invent 2024 "스타트업에서 기업으로: 확장 가능한 프론트엔드 및 풀스택 앱 구축" 세션 레포트입니다.
Clock Icon2024.12.09

안녕하세요. 클래스메소드의 정하은입니다.

이번 글에서는 AWS re:Invent 2024 에서 "스타트업에서 기업으로: 확장 가능한 프론트엔드 및 풀스택 앱 구축" 을 주제로 한 세션을 듣고 온 레포트를 작성하고자 합니다.

본 세션은 AWS Amplify를 이용하여 스타트업이 어떻게 기업체로 성장할 수 있는지 실제 고객 사례를 들어 설명하였습니다.

AWS Amplify는 전문 개발 팀에게 엔드투엔드 경험과 입증된 패턴을 제공하여 생산성을 가속화하고 AWS 인프라의 속도와 안정성을 갖춘 구축을 지원합니다. 이러한 내장 패턴을 사용하는 방법과 CDK로 AWS 백엔드를 커스터마이징할 수 있는 Amplify의 유연성에 대해 알아보세요. 이 세션에서는 실제 시나리오에 대한 개요를 제공하고 Amplify의 새로운 엔터프라이즈 중심 기능을 소개하여 AWS에서 안전하고 확장 가능한 클라우드 연결 애플리케이션을 그 어느 때보다 쉽게 구축, 배포 및 호스팅할 수 있도록 지원합니다.

세션 영상은 유튜브에 공개 되어 있으니 참고 바랍니다.

목차

IMG_0366

  1. 왜 Amplify 인가?
  2. 고객 사례
  3. Amplify Gen 2 소개
  4. 인증
  5. 저장공간
  6. 데이터
  7. AI
  8. Amplify 호스팅

목차와 실제 발표내용 순서에 오류가 있으며, 실제 발표내용은 5번이 데이터, 6번이 저장공간이었습니다.

세션 내용

왜 Amplify 인가?

IMG_0375

일반적으로 웹에서의 풀스택 개발이라고 하면 HTML, CSS, JavaScript 등의 프론트엔드 개발 후, 백엔드 환경과 통신할 수 있는 API를 호출하는 게 일반적인데요. 요근래는 AWS Fargate나 AWS Lambda나 GraphQL 리졸버로 서버리스 환경의 구축이 가능해졌고, 데이터베이스의 종류에도 구애받지 않게 되었죠.

IMG_0376

그만큼 프론트엔드 개발자가 풀스택 개발을 하게 되는 경우가 늘었고, 이를 AWS Amplify로 실현할 수 있습니다.

고객 사례

이탈리아의 Abit 이라는 기업의 CEO가 직접 Amplify 사용 사례에 대하여 설명하였습니다.

IMG_0377

Abit은 생물의 다양성을 분석하여 농부들이 수확량과 품질을 높일 수 있는 방안을 모색할 수 있도록 도와주는 소프트웨어입니다.

위성 데이터, 날씨 데이터와 같은 데이터 소스를 사용하여 한쪽에서는 생물 다양성 지수를 계산하고 다른 한쪽에서는 토양이 미래에 어떻게 진화할 지 예측하여 고객들에게 생물 다양성 지수에 대한 서비스나 개선방안을 제공합니다.

IMG_0378

스타트업이기에 조직 비용도 중요했지만 시기 적절하게 농업 솔루션을 제공해야하기에 타이밍과 민첩성도 중요하였기에 AWS Amplify가 개발에 적합했다고 하네요.

IMG_0379

그 결과 6개월만에 MVP 개발이 가능하였고, 개발 비용을 70% 정도 삭감, 시장 진출도 빠르게 가능 하였다고 합니다.

IMG_0380

후에 인공위성 데이터가 농업에 중요하다는 것을 알게 되어 Sage Maker를 이용하여 수집한 인공위성 데이터를 분석하고 AWS Amplify와 쉽게 통합하여 이용할 수 있었다고 해요.

Amplify Gen 2 소개

Amplify Gen 2는 올해 초에 정식 출시 되었는데요.

IMG_0381

아래 3가지를 중점으로 개발되었다고 합니다.

  • TypeScript 중심으로 개발에 집중할 수 있도록 함
  • Amplify 호스팅 서비스에 코드를 쉽게 배포할 수 있도록 백엔드 Amplify 호스팅 제공업체에 직접 연결된 Git 브랜치와 Git 푸쉬 도입
  • CDK를 기반으로 구축 가능. Amplify에서 제공하지 않는 서비스는 CDK를 이용하여 확장 가능

인증

IMG_0382

AWS Amplify는 로그인 기능을 추가하기 위해 사전 구축된 UI 구성 요소 라이브러리가 마련되어 있습니다.

사용자가 원하는 모양으로 커스터마이징도 가능하며, 멀티 팩트 인증이나 비밀번호 찾기 등의 기능도 갖추고 있고, 회원가입 기능을 감출 수도 있습니다.

사전 구축된 라이브러리를 사용하고 싶지 않다면 JavaScript, TypeScript 클라이언트 라이브러리도 사용할 수 있으며, Amazon Cognito와 직접 만든 UI를 연결할 수 있습니다.

데이터

IMG_0383

AWS Amplify는 기본적으로 MySQL 및 PostgreSQL와 연결할 수 있지만, 이미 사용중인 Amazon RDS와 같은 관계형 데이터베이스에 연결도 가능합니다. 데이터베이스에 맞는 GraphQL API를 AWS AppSync를 이용하여 자동으로 구축해주기 때문에 CRUD 이벤트 구독에 용이합니다.

최근에 Events API라는 pub/sub 방식의 API도 제공하기 시작하였다고 하네요.

저장공간

IMG_0384

AWS Amplify는 S3 버킷을 이용할 수 있는 라이브러리를 제공합니다. 데이터 업로드, 서명된 URL 다시 받기, 데이터 목록 작성 등 예상되는 모든 작업을 수행할 수 있으며, 다른 API와 업로드를 추적할 수도 있습니다.

또한, 최근에 스토리지 브라우저라는 새로운 기능이 추가되었는데요. S3 버킷에 대해 시각적 인터페이스를 제공합니다. Amazon Cognito와 같은 인증 기능을 사용하고 있는 경우, 각 사용자마자 자신의 버킷을 가져 파일 업로드 및 삭제하거나, 목록을 조회하는 등의 활용도 가능하다고 합니다.

AI

IMG_0385

AWS Amplify에 Amplify AI Kit라는 새 기능이 도입이 되었는데요. 리소스 파일을 사용하면 시스템 프롬프트에 액세스할 수 있는 모델과 예상 출력결과를 정의할 수 있고, API를 이용하면 해당 모델과 대화할 수 있습니다.

오픈 소스 클라이언트 API 라이브러리 및 UI 구성 요소 라이브러리를 제공하는데, 채팅 인터페이스를 위한 UI 구성 요소 라이브러리와 일부 UI 구성 요소 API를 React 앱에서 사용할 수 있습니다.

Amplify 호스팅

IMG_0388
IMG_0387

Amplify Hosting은 웹 개발 호스팅 플랫폼이 지원할 것으로 예상되는 SSR 프레임워크, React, Angular, Vue.js와 같은 SPA 프레임워크나 정적 사이트 생성기를 지원합니다.

사용자 지정 도메인을 지원하며, Amazon Route 53을 통해 기존 등록 기관을 가리킬 수 있도록 설정할 수 있습니다. 세분화된 액세스 제어 기능도 제공하고 있으며, Git 브랜치를 기반으로 한 각 환경을 다른 환경으로 전환할 수 있습니다.

빌드 알림, 후크, 브랜치 미리보기 기능도 있으며 새 기능들이 항시 추가되고 있다고 합니다.

마무리

AWS Amplify를 이용하여 시장에 진출한 사례를 직접 들을 수 있어서 좋았습니다.

iOS 앱 개발자로 일하면서 AWS Amplify에 손을 뗀지 오래인데 그 새에 Amplify도 많은 기능이 추가가 되었고 실제로 사용되는 프로덕트도 있다고 할 정도로 성장한 서비스가 되어 있었다는 점이 인상적이었습니다.

IMG_0386

마지막으로 Amazon Q Developer 라는 AI 기반 소프트웨어 개발 도우미에 대한 기능도 소개하고 있었는데, Swift는 아직 인라인 제안으로만 사용 가능하여 추후에 코드 리뷰 기능도 추가되면 업무에 활용해보고 싶네요!

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.